Methods and apparatus for frame exchange for sdma uplink data

ABSTRACT

Certain embodiments provide a method for scheduling simultaneous transmissions of data from multiple wireless nodes in a wireless communications system.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims benefit of U.S. Provisional Patent ApplicationSer. No. 61/090,207 filed Aug. 19, 2008, which is herein incorporated byreference in its entirety.

BACKGROUND

In order to address the issue of increasing bandwidth requirementsdemanded for wireless communication systems, different schemes are beingdeveloped to allow multiple user terminals to communicate with a singlebase station by sharing the same channel (same time and frequencyresources) while achieving high data throughputs. Spatial DivisionMultiple Access (SDMA) represents one such approach that has recentlyemerged as a popular technique for the next generation communicationsystems.

In SDMA systems, a base station may transmit or receive differentsignals to or from a plurality of mobile user terminals at the same timeand using the same frequency. In order to achieve reliable datacommunication, user terminals may need to be located in sufficientlydifferent directions. Independent signals may be simultaneouslytransmitted from each of multiple space-separated antennas at the basestation. Consequently, the combined transmissions may be directional,i.e., the signal that is dedicated for each user terminal may berelatively strong in the direction of that particular user terminal andsufficiently weak in directions of other user terminals. Similarly, thebase station may simultaneously receive on the same frequency thecombined signals from multiple user terminals through each of multipleantennas separated in space, and the combined received signals from themultiple antennas may be split into independent signals transmitted fromeach user terminal by applying the appropriate signal processingtechnique.

A multiple-input multiple-output (MIMO) wireless system employs a number(N_(T)) of transmit antennas and a number (N_(R)) of receive antennasfor data transmission. A MIMO channel formed by the N_(T) transmit andN_(R) receive antennas may be decomposed into N_(S) spatial channels,where, for all practical purposes, N_(S)≦min{N_(T),N_(R)}. The N_(S)spatial channels may be used to transmit N_(S) independent data streamsto achieve greater overall throughput.

In a multiple-access MIMO system based on SDMA, an access point cancommunicate with one or more user terminals at any given moment. If theaccess point communicates with a single user terminal, then the N_(T)transmit antennas are associated with one transmitting entity (eitherthe access point or the user terminal), and the N_(R) receive antennasare associated with one receiving entity (either the user terminal orthe access point). The access point can also communicate with multipleuser terminals simultaneously via SDMA. For SDMA, the access pointutilizes multiple antennas for data transmission and reception, and eachof the user terminals typically utilizes less than the number of accesspoint antennas for data transmission and reception. When SDMA istransmitted from an access point, N_(S)≦min{N_(T), sum(N_(R))}, wheresum(N_(R)) represents the summation of all user terminal receiveantennas. When SDMA is transmitted to an access point,N_(S)≦min{sum(N_(T)), N_(R)}, where sum(N_(T)) represents the summationof all user terminal transmit antennas.

SUMMARY

Certain embodiments provide a method for scheduling simultaneoustransmissions of data from multiple wireless nodes in a wirelesscommunications system. The method generally includes transmitting arequest for information regarding uplink transmissions from the wirelessnodes, receiving, in response to the request, information regardinguplink transmissions from the wireless nodes, transmitting an allocationconfirmation message allocating uplink resources to a set of at leastsome of the wireless nodes based on the received information, andreceiving simultaneous transmissions of data from the set of wirelessnodes.

Certain embodiments provide a method for scheduling transmissions ofdata from a wireless node in a wireless communications system thatsupports simultaneous transmissions of data from multiple wirelessnodes. The method generally includes transmitting information regardinguplink transmissions via an orthogonal frequency division multipleaccess (OFDMA) transmission scheme utilizing a subset of available tonesin the system, receiving a message acknowledging receipt of thetransmitted information regarding uplink transmissions, and transmittingdata on an uplink after receiving the allocation confirmation message.

Certain embodiments provide an apparatus for scheduling simultaneoustransmissions of data from multiple wireless nodes in a wirelesscommunications system. The apparatus generally includes logic fortransmitting a request for information regarding uplink transmissionsfrom the wireless nodes, logic for receiving, in response to therequest, information regarding uplink transmissions from the wirelessnodes, logic for transmitting an allocation confirmation messageallocating uplink resources to a set of at least some of the wirelessnodes based on the received information, and logic for receivingsimultaneous transmissions of data from the set of wireless nodes.

Certain embodiments provide an apparatus for scheduling transmissions ofdata from a wireless node in a wireless communications system thatsupports simultaneous transmissions of data from multiple wirelessnodes. The apparatus generally includes logic for transmittinginformation regarding uplink transmissions via an orthogonal frequencydivision multiple access (OFDMA) transmission scheme utilizing a subsetof available tones in the system, logic for receiving a messageacknowledging receipt of the transmitted information regarding uplinktransmissions, and logic for transmitting data on an uplink afterreceiving the allocation confirmation message.

Certain embodiments provide an apparatus for scheduling simultaneoustransmissions of data from multiple wireless nodes in a wirelesscommunications system. The apparatus generally includes means fortransmitting a request for information regarding uplink transmissionsfrom the wireless nodes, means for receiving, in response to therequest, information regarding uplink transmissions from the wirelessnodes, means for transmitting an allocation confirmation messageallocating uplink resources to a set of at least some of the wirelessnodes based on the received information, and means for receivingsimultaneous transmissions of data from the set of wireless nodes.

Certain embodiments provide an apparatus for scheduling transmissions ofdata from a wireless node in a wireless communications system thatsupports simultaneous transmissions of data from multiple wirelessnodes. The apparatus generally includes means for transmittinginformation regarding uplink transmissions via an orthogonal frequencydivision multiple access (OFDMA) transmission scheme utilizing a subsetof available tones in the system, means for receiving a messageacknowledging receipt of the transmitted information regarding uplinktransmissions, and means for transmitting data on an uplink afterreceiving the allocation confirmation message.

Certain embodiments provide a computer-program product for schedulingsimultaneous transmissions of data from multiple wireless nodes in awireless communications system comprising a computer readable mediumhaving instructions stored thereon, the instructions being executable byone or more processors. The instructions generally include instructionsfor transmitting a request for information regarding uplinktransmissions from the wireless nodes, receiving, in response to therequest, information regarding uplink transmissions from the wirelessnodes, transmitting an allocation confirmation message allocating uplinkresources to a set of at least some of the wireless nodes based on thereceived information, and receiving simultaneous transmissions of datafrom the set of wireless nodes.

Certain embodiments provide a computer-program product for schedulingtransmissions of data from a wireless node in a wireless communicationssystem that supports simultaneous transmissions of data from multiplewireless nodes comprising a computer readable medium having instructionsstored thereon, the instructions being executable by one or moreprocessors. The instructions generally include instructions fortransmitting information regarding uplink transmissions via anorthogonal frequency division multiple access (OFDMA) transmissionscheme utilizing a subset of available tones in the system, receiving amessage acknowledging receipt of the transmitted information regardinguplink transmissions, and transmitting data on an uplink after receivingthe allocation confirmation message.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features of the presentdisclosure can be understood in detail, a more particular description,briefly summarized above, may be had by reference to embodiments, someof which are illustrated in the appended drawings. It is to be noted,however, that the appended drawings illustrate only certain typicalembodiments of this disclosure and are therefore not to be consideredlimiting of its scope, for the description may admit to other equallyeffective embodiments.

FIG. 1 shows a spatial division multiple access MIMO wireless system inaccordance with certain embodiments of the present disclosure.

FIG. 2 shows a block diagram of an access point and two user terminalsin accordance with certain embodiments of the present disclosure.

FIG. 3 illustrates example components of a wireless device in accordancewith certain embodiments of the present disclosure.

FIG. 4 illustrates example operations for synchronizing uplinktransmissions of multiple access stations, according to one embodimentof the disclosure.

FIG. 4A illustrates example components capable of performing theoperations shown in FIG. 4.

FIG. 5 is an example timing diagram showing example message flow forsynchronizing uplink transmissions of multiple access stations in anSDMA system.

DETAILED DESCRIPTION

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments. Also as used herein, the term“legacy stations” generally refers to wireless network nodes thatsupport 802.11n or earlier versions of the IEEE 802.11 standard.

The multi-antenna transmission techniques described herein may be usedin combination with various wireless technologies such as Code DivisionMultiple Access (CDMA), Orthogonal Frequency Division Multiplexing(OFDM), Time Division Multiple Access (TDMA), and so on. Multiple userterminals can concurrently transmit/receive data via different (1)orthogonal code channels for CDMA, (2) time slots for TDMA, or (3)sub-bands for OFDM. A CDMA system may implement IS-2000, IS-95, IS-856,Wideband-CDMA (W-CDMA), or some other standards. An OFDM system mayimplement IEEE 802.11 or some other standards. A TDMA system mayimplement GSM or some other standards. These various standards are knownin the art.

An Example MIMO System

FIG. 1 shows a multiple-access MIMO system 100 with access points anduser terminals. For simplicity, only one access point 110 is shown inFIG. 1. An access point (AP) is generally a fixed station thatcommunicates with the user terminals and may also be referred to as abase station or some other terminology. A user terminal may be fixed ormobile and may also be referred to as a mobile station, a station (STA),a client, a wireless device, or some other terminology. A user terminalmay be a wireless device, such as a cellular phone, a personal digitalassistant (PDA), a handheld device, a wireless modem, a laptop computer,a personal computer, etc.

Access point 110 may communicate with one or more user terminals 120 atany given moment on the downlink and uplink. The downlink (i.e., forwardlink) is the communication link from the access point to the userterminals, and the uplink (i.e., reverse link) is the communication linkfrom the user terminals to the access point. A user terminal may alsocommunicate peer-to-peer with another user terminal. A system controller130 couples to and provides coordination and control for the accesspoints.

While portions of the following disclosure will describe user terminals120 capable of communicating via spatial division multiple access(SDMA), for certain embodiments, the user terminals 120 may also includesome user terminals that do not support SDMA. Thus, for suchembodiments, an AP 110 may be configured to communicate with both SDMAand non-SDMA user terminals. This approach may conveniently allow olderversions of user terminals (“legacy” stations) to remain deployed in anenterprise, extending their useful lifetime, while allowing newer SDMAuser terminals to be introduced as deemed appropriate.

System 100 employs multiple transmit and multiple receive antennas fordata transmission on the downlink and uplink. Access point 110 isequipped with a number Nap of antennas and represents the multiple-input(MI) for downlink transmissions and the multiple-output (MO) for uplinktransmissions. A set N, of selected user terminals 120 collectivelyrepresents the multiple-output for downlink transmissions and themultiple-input for uplink transmissions. For pure SDMA, it is desired tohave N_(ap)≧N_(u)≧1 if the data symbol streams for the N_(u) userterminals are not multiplexed in code, frequency, or time by some means.N_(u) may be greater than N_(ap) if the data symbol streams can bemultiplexed using different code channels with CDMA, disjoint sets ofsub-bands with OFDM, and so on. Each selected user terminal transmitsuser-specific data to and/or receives user-specific data from the accesspoint. In general, each selected user terminal may be equipped with oneor multiple antennas (i.e., N_(ut)≧1). The N_(u) selected user terminalscan have the same or different number of antennas.

MIMO system 100 may be a time division duplex (TDD) system or afrequency division duplex (FDD) system. For a TDD system, the downlinkand uplink share the same frequency band. For an FDD system, thedownlink and uplink use different frequency bands. MIMO system 100 mayalso utilize a single carrier or multiple carriers for transmission.Each user terminal may be equipped with a single antenna (e.g., in orderto keep costs down) or multiple antennas (e.g., where the additionalcost can be supported).

FIG. 2 shows a block diagram of access point 110 and two user terminals120m and 120x in MIMO system 100. Access point 110 is equipped withN_(ap) antennas 224 a through 224 ap. User terminal 120 m is equippedwith N_(ut,m) antennas 252 ma through 252 mu, and user terminal 120 x isequipped with N_(ut,x) antennas 252 xa through 252 xu. Access point 110is a transmitting entity for the downlink and a receiving entity for theuplink. Each user terminal 120 is a transmitting entity for the uplinkand a receiving entity for the downlink. As used herein, a “transmittingentity” is an independently operated apparatus or device capable oftransmitting data via a wireless channel, and a “receiving entity” is anindependently operated apparatus or device capable of receiving data viaa wireless channel. In the following description, the subscript “dn”denotes the downlink, the subscript “up” denotes the uplink, N_(up) userterminals are selected for simultaneous transmission on the uplink,N_(dn) user terminals are selected for simultaneous transmission on thedownlink, N_(up) may or may not be equal to N_(dn), and N_(up) andN_(dn) may be static values or can change for each scheduling interval.The beam-steering or some other spatial processing technique may be usedat the access point and user terminal.

On the uplink, at each user terminal 120 selected for uplinktransmission, a TX data processor 288 receives traffic data from a datasource 286 and control data from a controller 280. TX data processor 288processes (e.g., encodes, interleaves, and modulates) the traffic data{d_(up,m)} for the user terminal based on the coding and modulationschemes associated with the rate selected for the user terminal andprovides a data symbol stream {s_(up,m)}. A TX spatial processor 290performs spatial processing on the data symbol stream {s_(up,m)} andprovides N_(ut,m) transmit symbol streams for the N_(ut,m) antennas.Each transmitter unit (TMTR) 254 receives and processes (e.g., convertsto analog, amplifies, filters, and frequency upconverts) a respectivetransmit symbol stream to generate an uplink signal. N_(ut,m)transmitter units 254 provide N_(ut,m) uplink signals for transmissionfrom N_(ut,m) antennas 252 to the access point 110.

A number N_(up) of user terminals may be scheduled for simultaneoustransmission on the uplink. Each of these user terminals performsspatial processing on its data symbol stream and transmits its set oftransmit symbol streams on the uplink to the access point.

At access point 110, N_(ap) antennas 224 a through 224 ap receive theuplink signals from all N_(up) user terminals transmitting on theuplink. Each antenna 224 provides a received signal to a respectivereceiver unit (RCVR) 222. Each receiver unit 222 performs processingcomplementary to that performed by transmitter unit 254 and provides areceived symbol stream. An RX spatial processor 240 performs receiverspatial processing on the N_(ap) received symbol streams from N_(ap)receiver units 222 and provides N_(up) recovered uplink data symbolstreams. The receiver spatial processing is performed in accordance withthe channel correlation matrix inversion (CCMI), minimum mean squareerror (MMSE), successive interference cancellation (SIC), or some othertechnique. Each recovered uplink data symbol stream {s_(up,m)} is anestimate of a data symbol stream {s_(up,m)} transmitted by a respectiveuser terminal. An RX data processor 242 processes (e.g., demodulates,deinterleaves, and decodes) each recovered uplink data symbol stream{s_(up,m)} in accordance with the rate used for that stream to obtaindecoded data. The decoded data for each user terminal may be provided toa data sink 244 for storage and/or a controller 230 for furtherprocessing.

On the downlink, at access point 110, a TX data processor 210 receivestraffic data from a data source 208 for N_(dn) user terminals scheduledfor downlink transmission, control data from a controller 230, andpossibly other data from a scheduler 234. The various types of data maybe sent on different transport channels. TX data processor 210 processes(e.g., encodes, interleaves, and modulates) the traffic data for eachuser terminal based on the rate selected for that user terminal. TX dataprocessor 210 provides N_(dn) downlink data symbol streams for theN_(dn) user terminals. A TX spatial processor 220 performs spatialprocessing on the N_(dn) downlink data symbol streams, and providesN_(ap) transmit symbol streams for the N_(ap) antennas. Each transmitterunit (TMTR) 222 receives and processes a respective transmit symbolstream to generate a downlink signal. N_(ap) transmitter units 222provide N_(ap) downlink signals for transmission from N_(ap) antennas224 to the user terminals.

At each user terminal 120, N_(ut,m) antennas 252 receive the N_(ap)downlink signals from access point 110. Each receiver unit (RCVR) 254processes a received signal from an associated antenna 252 and providesa received symbol stream. An RX spatial processor 260 performs receiverspatial processing on N_(ut,m) received symbol streams from N_(ut,m)receiver units 254 and provides a recovered downlink data symbol stream{S_(dn,m)} for the user terminal. The receiver spatial processing isperformed in accordance with the CCMI, MMSE, or some other technique. AnRX data processor 270 processes (e.g., demodulates, deinterleaves, anddecodes) the recovered downlink data symbol stream to obtain decodeddata for the user terminal.

FIG. 3 illustrates various components that may be utilized in a wirelessdevice 302 that may be employed within the system 100. The wirelessdevice 302 is an example of a device that may be configured to implementthe various methods described herein. The wireless device 302 may be anaccess point 110 or a user terminal 120.

The wireless device 302 may include a processor 304 which controlsoperation of the wireless device 302. The processor 304 may also bereferred to as a central processing unit (CPU). Memory 306, which mayinclude both read-only memory (ROM) and random access memory (RAM),provides instructions and data to the processor 304. A portion of thememory 306 may also include non-volatile random access memory (NVRAM).The processor 304 typically performs logical and arithmetic operationsbased on program instructions stored within the memory 306. Theinstructions in the memory 306 may be executable to implement themethods described herein.

The wireless device 302 may also include a housing 308 that may includea transmitter 310 and a receiver 312 to allow transmission and receptionof data between the wireless device 302 and a remote location. Thetransmitter 310 and receiver 312 may be combined into a transceiver 314.A plurality of transmit antennas 316 may be attached to the housing 308and electrically coupled to the transceiver 314. The wireless device 302may also include (not shown) multiple transmitters, multiple receivers,and multiple transceivers.

The wireless device 302 may also include a signal detector 318 that maybe used in an effort to detect and quantify the level of signalsreceived by the transceiver 314. The signal detector 318 may detect suchsignals as total energy, energy per subcarrier per symbol, powerspectral density and other signals. The wireless device 302 may alsoinclude a digital signal processor (DSP) 320 for use in processingsignals.

The various components of the wireless device 302 may be coupledtogether by a bus system 322, which may include a power bus, a controlsignal bus, and a status signal bus in addition to a data bus.

As used herein, the term “legacy” generally refers to wireless networknodes that support 802.11n or earlier versions of the 802.11 standard.

While certain techniques are described herein with reference to SDMA,those skilled in the art will recognize the techniques may be generallyapplied in systems utilizing any type of multiple access schemes, suchas SDMA, OFDMA, CDMA, and combinations thereof.

Uplink SDMA using OFDMA Allocation Indication

In a Spatial Division Multiple Access (SDMA) scheme, uplink (UL)transmissions from multiple stations (STAs) to an access point (AP)should be synchronized to allow the AP to properly decode thetransmissions. UL transmissions should be synchronized in terms ofarrival time at the AP, frequency, received power length of packets, andallocation of spatial streams.

While UL synchronization may be performed via a scheduler on the AP, orvia use of a Point Coordination Function (PCF) or HCF Controlled ChannelAccess (HCCA), such mechanisms may be less than ideal for variousreasons. For example, the use of a scheduler on the AP may be complexand, in addition, may preclude a STA to request a Transmit Opportunity(TXOP) when needed.

Techniques provided herein, however, utilize a Request to Send (RTS)non-contention based scheme using OFDM for allocation (TXOP) requestsfrom SDMA stations. These techniques allow synchronization of ULtransmissions to be primarily accomplished by the stations, therebyreducing the scheduling burden on the AP. In order to accomplish this,for certain embodiments, the stations may follow a set ofsynchronization rules when exchanging uplink data. As a result, certaintechniques provided herein may provide a resource-efficient frameexchange that allows an AP to coordinate spatial resources and, in somecases, to determine the upstream Modulation and Coding Scheme (MCS) foreach station.

FIG. 4 illustrates example operations for exchanging frames for uplinkSDMA transmissions, in accordance with certain embodiments of thepresent disclosure. The illustrated operations include operationsperformed at an access point and corresponding operations performed at astation. As will be described with reference to the timing diagram shownin FIG. 5, the station operations may be performed by multiple SDMAstations simultaneously.

The AP may initiate a frame exchange, at 402, by transmitting a requestfor UL SDMA information, in what may be referred to as a “Request forSDMA” or RSDMA. For certain embodiments, before initiating the frameexchange by sending the RSDMA, the AP may have to gain channel access,for example, via conventional EDCA techniques. However, within the ULSDMA frame sequence, there may be no contention for resources.

The RSDMA frame may be sent as a regular multi-cast MSDU. A conservativeMCS may be used to ensure all stations can decode the frame. The signalcharacteristics of the RSDMA frame, such as bandwidth (e.g. 20 MHz, 40MHz, 60 MHz or 80 MHz), guard interval length, and pilot tone number,may indicate implicitly to the stations what signal characteristicsshould be used for subsequent UL transmissions. The RSDMA may alsoindicate the number of frames allowed for the RTS-MA messages(allocation indication) described below. The RSDMA may also indicate anRTS-MA frame number start and frame number end (e.g., as 4-bit fields).

Each RTS-MA frame may accommodate a certain number of users (e.g., eachframe may accommodate a number of users on the order of 4 multiplied bythe number of streams per 20 MHz channel used). The RSDMA may alsoprovide an indication of allocated tones and spatial streams to use forRTS-MAs. The RSDMA may also contain an output power indication (EIRP)used to help clients determine link budget. The RSDMA may also contain amechanism, such as a post-amble, to assist with time and frequency sync.

At 452, the stations receive the RSDMA. Timing (and optionally frequencysynchronization) of SDMA UL transmissions may be synchronized based onarrival of the RSDMA. For certain embodiments, received power of theRSDMA may also be used for coarse power adjustments.

At 454, the station transmits a Request to Send multiple access (RTS-MA)message. The RTS-MA message generally indicates a request for anallocation of resources, for example, indicating a station sending theRTS-MA has UL data to send. The RTS-MA may contain a variety of ULtransmission information, such as a transmission class (TC-such asvoice, video, or Best Effort) and a transmission length. For example, 14bits of the RTS-MA may allow a station to provide a 2-bit TC indicationand a 12-bit data length.

For certain embodiments, the RTS-MA frame may be sent utilizing an OFDMAframe with a preamble and data. Each station may be allocated a subsetof tones and a number of spatial streams to use for sending the RTS-MA.For certain embodiments, stations may be pre-assigned tones and spatialstreams, for example, during initial association with the AP. The toneand stream allocation may be changed, however, with management actionframes or multi-cast announcement frames. Each station may send itsRTS-MA using a suitable MCS, for example, such as higher than QPSK, ½rate coding. For certain embodiments, however, each station may have thefull range of tones and/or spatial streams available.

For certain embodiments, to accommodate a high number of stations,multiple RTS-MA frames may be sent in series (separated by SIFSspacing). For example, assuming 4 stations per 20 MHz of bandwidth, asingle RTS-MA frame using 80 MHz and 16 receive antennas at the AP maysupport 256 stations. On the other hand, again assuming 4 stations per20 MHz of bandwidth, 16 RTS-MA frames would be needed, when using 20 MHzand 4 receive antennas at the AP.

At 404, the AP receives the RTS-MA message from stations and,optionally, at 406, sends an RTS-MA Acknowledgement (ACK) message. TheRTS-MA ACK may be a multi-cast message sent by the AP using the lowestMCS used by a station to send an RTS-MA, in an effort to ensure receiptof the RTS-MA ACK by each station. The RTS-MA ACK may optionally definespatial stream allocation. For certain embodiments, the RTS-MA ACK mayrequest sounding signals from the one or more stations and may define alength of the transmit opportunity (TXOP) for all stations to set theirNAV.

For certain embodiments, the RTS-MA ACK sent by the AP may also containsynchronization feedback included as N-bits in the message. For example,the RTS-MA ACK may include 4 bits specifying a number of samples toretard or advance the start of transmissions, 4 bits carrying a powerdifferential in units of 1 dB, and/or 8 bits carrying a frequencydifferential shift in units of 3.12 kHz. Such feedback information mayallow the AP to make fine adjustments to transmission parameters of eachstation, based on the sounding signals received therefrom.

At 456, if sent, the station may receive the RTS-MA acknowledge message.As described above, the RTS-MA ACK may optionally request soundingsignals from some stations. At 458, stations that were requested to doso send sounding signals. The sounding signals may be sent as a framepreamble only and the number of long training fields (LTFs) in thepreamble may also be specified in the RTS-MA ACK message.

At 408, the AP determines resource allocation. For example, the AP maydetermine which stations to allocate UL resources to based on thetransmission class and/or transmission length indicated in the RTS-MAmessages. For example, stations indicating a higher prioritytransmission class (e.g., voice or video) may be allocated resourcesbefore stations with lower priority transmissions classes (e.g., BestEffort). If there are not sufficient bandwidth resources for allstations that sent an RTS-MA with the same TC, the AP may determinewhich stations are allocated resources based on transmission length.Further, for certain embodiments, an AP may also decide resourceallocation based on the sounding signals. For example, if one station ispositioned such that its transmissions are highly correlated withanother station, it may be more efficient overall to not allocate thatstation resources in a current frame to avoid interference.

At 410, the AP transmits allocation confirmation to the stations. Asdescribed above, the confirmation may include an indication that allstations are allocated resources or only a limited subset. The AP maysend the allocation confirmation after receiving the sounding. Theallocation confirmation may be considered a Clear to Send multipleaccess (CTS-MA) message indicating which stations are clear to send SDMAUL data. The allocation confirmation may be sent as a multi-castaggregated MAC protocol data unit (A-MPDU) using a lowest MCS which canbe received by all the stations.

In the allocation confirmation message, the AP may confirm spatialstream allocation for use by the stations in the SDMA TxOP. Aspreviously described, some stations may not be allocated UL resources,for example, due to low priority transmission class or high correlationwith other clients. The AP may optionally also assign new MCS to eachstation in the allocation confirmation, for example, based on thesounding signals received. The AP may also define a length of TxOP forthe stations to set NAV.

For certain embodiments, rather than send separate allocationacknowledgements and allocation confirmation, a single message may besent. For example, for embodiments where optional sounding is notperformed, the AP may send a single message after receiving RTS-MAs thatacknowledges UL resource allocation to the stations.

At 460, the station receives the allocation confirmation and, assumingit was allocated resources, transmits SDMA data, at 462. At 412, the APreceives the SDMA data (from multiple stations). Because much of theallocation and scheduling operations are distributed to the stationsusing the synchronization rules described above, there is no need toincur the overhead of saving state information or a history oftransactions. Thus, once the SDMA transmission is complete, the AP andstation may flush the memory used for this SDMA exchange, at 414 and464, respectively.

FIG. 5 illustrates one example of SDMA UL frame exchange between an APand three stations (STA1-STA3) in accordance with the operationsdescribed above. As illustrated, the AP initiates the exchange bysending a Request for UL SDMA (RSDMA) 502, in some cases after gainingchannel access via EDCA techniques. The RSDMA 502 synchronizes theremaining frames in the exchange which are separated by SIFS.

The stations respond to the RSDMA with RTS-MA messages 504 (labeled asallocation indication-AI messages). As described above, the RTS-MAmessages 504 may be sent by each station using OFDMA, with a subset oftones and a number of spatial streams assigned to each station forcertain embodiments.

In the illustrated example, the AP acknowledges the RTS-MA messages 504with an acknowledgement message 506 that may request sounding signalsfrom the stations. The stations respond with sounding frames 508. Aspreviously described, the sounding frames 508 may help the AP decide onfinal resource allocation, which it communicates to the stations in anallocation acknowledgement (or CTS-MA) message 510.

The stations that are allocated UL resources send SDMA UL data 512. Inthe illustrated example, station 2 is not allocated resources and, thus,is not allowed to send SDMA UL data 512. The AP may acknowledge the SDMAUL data 512 from the stations with a block acknowledgement 514, therebyending the frame exchange.

The various operations of methods described above may be performed byvarious hardware and/or software logic, component(s) and/or module(s)corresponding to means-plus-function blocks illustrated in the figures.Generally, where there are methods illustrated in figures any suitablemeans having corresponding counterpart means-plus-function figures, theoperation blocks correspond to means-plus-function blocks with similarnumbering. For example, operations 400 shown in FIG. 4 may be performedby corresponding means 400A shown in FIG. 4A.

As used herein, the term “determining” encompasses a wide variety ofactions. For example, “determining” may include calculating, computing,processing, deriving, investigating, looking up (e.g., looking up in atable, a database or another data structure), ascertaining and the like.Also, “determining” may include receiving (e.g., receiving information),accessing (e.g., accessing data in a memory) and the like. Also,“determining” may include resolving, selecting, choosing, establishingand the like.

Information and signals may be represented using any of a variety ofdifferent technologies and techniques. For example, data, instructions,commands, information, signals and the like that may be referencedthroughout the above description may be represented by voltages,currents, electromagnetic waves, magnetic fields or particles, opticalfields or particles or any combination thereof.

The various illustrative logical blocks, modules and circuits describedin connection with the present disclosure may be implemented orperformed with a general purpose processor, a digital signal processor(DSP), an application specific integrated circuit (ASIC), a fieldprogrammable gate array signal (FPGA) or other programmable logic device(PLD), discrete gate or transistor logic, discrete hardware componentsor any combination thereof designed to perform the functions describedherein. A general purpose processor may be a microprocessor, but in thealternative, the processor may be any commercially available processor,controller, microcontroller or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm described in connection with thepresent disclosure may be embodied directly in hardware, in a softwaremodule executed by a processor, or in a combination of the two. Asoftware module may reside in any form of storage medium that is knownin the art. Some examples of storage media that may be used includerandom access memory (RAM), read only memory (ROM), flash memory, EPROMmemory, EEPROM memory, registers, a hard disk, a removable disk, aCD-ROM and so forth. A software module may comprise a singleinstruction, or many instructions, and may be distributed over severaldifferent code segments, among different programs, and across multiplestorage media. A storage medium may be coupled to a processor such thatthe processor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor.

The methods disclosed herein comprise one or more steps or actions forachieving the described method. The method steps and/or actions may beinterchanged with one another without departing from the scope of theclaims. In other words, unless a specific order of steps or actions isspecified, the order and/or use of specific steps and/or actions may bemodified without departing from the scope of the claims.

The functions described may be implemented in hardware, software,firmware or any combination thereof If implemented in software, thefunctions may be stored as one or more instructions on acomputer-readable medium. A storage media may be any available mediathat can be accessed by a computer. By way of example, and notlimitation, such computer-readable media can comprise RAM, ROM, EEPROM,CD-ROM or other optical disk storage, magnetic disk storage or othermagnetic storage devices, or any other medium that can be used to carryor store desired program code in the form of instructions or datastructures and that can be accessed by a computer. Disk and disc, asused herein, include compact disc (CD), laser disc, optical disc,digital versatile disc (DVD), floppy disk, and Blu-ray® disc where disksusually reproduce data magnetically, while discs reproduce dataoptically with lasers.

Software or instructions may also be transmitted over a transmissionmedium. For example, if the software is transmitted from a website,server, or other remote source using a coaxial cable, fiber optic cable,twisted pair, digital subscriber line (DSL), or wireless technologiessuch as infrared, radio, and microwave, then the coaxial cable, fiberoptic cable, twisted pair, DSL, or wireless technologies such asinfrared, radio, and microwave are included in the definition oftransmission medium.

Further, it should be appreciated that modules and/or other appropriatemeans for performing the methods and techniques described herein can bedownloaded and/or otherwise obtained by a user terminal and/or basestation as applicable. For example, such a device can be coupled to aserver to facilitate the transfer of means for performing the methodsdescribed herein. Alternatively, various methods described herein can beprovided via storage means (e.g., RAM, ROM, a physical storage mediumsuch as a compact disc (CD) or floppy disk, etc.), such that a userterminal and/or base station can obtain the various methods uponcoupling or providing the storage means to the device. Moreover, anyother suitable technique for providing the methods and techniquesdescribed herein to a device can be utilized.

It is to be understood that the claims are not limited to the preciseconfiguration and components illustrated above. Various modifications,changes and variations may be made in the arrangement, operation anddetails of the methods and apparatus described above without departingfrom the scope of the claims.

1. A method for scheduling simultaneous transmissions of data frommultiple wireless nodes in a wireless communications system, comprising:transmitting a request for information regarding uplink transmissionsfrom the wireless nodes; receiving, in response to the request,information regarding uplink transmissions from the wireless nodes;transmitting an allocation confirmation message allocating uplinkresources to a set of at least some of the wireless nodes based on thereceived information; and receiving simultaneous transmissions of datafrom the set of wireless nodes.
 2. The method of claim 1, whereinreceiving simultaneous transmissions of data from the set of wirelessnodes comprises receiving simultaneous transmissions of data sent via aspatial division multiple access (SDMA) scheme.
 3. The method of claim1, wherein at least one of the request for information regarding uplinktransmissions from the wireless nodes and the allocation confirmationmessage are transmitted using a message format specified in at least oneof the IEEE 802.11 family of standards.
 4. The method of claim 1,further comprising: performing channel access prior to transmitting therequest for information regarding uplink transmissions from the wirelessnodes.
 5. The method of claim 1, wherein receiving, in response to therequest, information regarding uplink transmissions from the wirelessnodes comprises: receiving the information simultaneously transmittedfrom the wireless nodes via an orthogonal division multiple access(OFDMA) scheme.
 6. The method of claim 5, wherein each wireless nodetransmits on a predetermined subset of available tones assigned during aregistration process.
 7. The method of claim 1, wherein the allocationconfirmation message includes at least one of: timing adjustmentinformation; frequency adjustment information; and power adjustmentinformation.
 8. The method of claim 7, wherein the allocationconfirmation message includes a number of bits of timing adjustmentinformation for each station.
 9. The method of claim 1, furthercomprising: determining which wireless nodes will be allocated uplinkresources based, at least in part, on the information regarding uplinktransmissions from the wireless nodes.
 10. The method of claim 1,further comprising: receiving sounding signals transmitted from thewireless nodes.
 11. The method of claim 10, further comprising:determining which wireless nodes will be allocated uplink resourcesbased, at least in part, on the sounding signals.
 12. The method ofclaim 10, further comprising: determining data rates for uplinktransmission from the wireless nodes based, at least in part, on thesounding signals.
 13. The method of claim 1, further comprisingtransmitting an acknowledgement message acknowledging receipt of theinformation regarding uplink transmissions from the wireless nodes. 14.A method for scheduling transmissions of data from a wireless node in awireless communications system that supports simultaneous transmissionsof data from multiple wireless nodes, comprising: transmittinginformation regarding uplink transmissions via an orthogonal frequencydivision multiple access (OFDMA) transmission scheme utilizing a subsetof available tones in the system; receiving a message acknowledgingreceipt of the transmitted information regarding uplink transmissions;and transmitting data on an uplink after receiving the allocationconfirmation message.
 15. The method of claim 14, further comprising:receiving a request for information regarding uplink transmissions fromthe wireless nodes; and transmitting the information regarding uplinktransmissions in response to the request.
 16. The method of claim 15,wherein at least one of the request for information regarding uplinktransmissions from the wireless nodes and the allocation confirmationmessage are transmitted using a message format specified in at least oneof the IEEE 802.11 family of standards.
 17. The method of claim 14,wherein transmitting data on an uplink after receiving the allocationconfirmation message comprises: transmitting data on the uplinksimultaneously with transmissions on the uplink from other wirelessnodes according to a spatial division multiple access (SDMA) scheme. 18.The method of claim 17, wherein each wireless node transmits informationregarding uplink transmissions according to an OFDMA transmission schemeon a predetermined subset of available tones assigned during aregistration process.
 19. The method of claim 14, further comprisingreceiving, in the message acknowledging receipt of the transmittedinformation regarding uplink transmissions at least one of: timingadjustment information; frequency adjustment information; and poweradjustment information.
 20. The method of claim 14, further comprising:transmitting sounding signals for use in channel estimation afterreceiving the message acknowledging receipt of the transmittedinformation regarding uplink transmissions.
 21. The method of claim 14,further comprising: receiving an indication of a data rate to use fortransmitting data on the uplink.
 22. The method of claim 14, wherein theinformation regarding uplink transmissions comprises at least one of: anindication of a transmission class; and a length of transmission.
 23. Anapparatus for scheduling simultaneous transmissions of data frommultiple wireless nodes in a wireless communications system, comprising:logic for transmitting a request for information regarding uplinktransmissions from the wireless nodes; logic for receiving, in responseto the request, information regarding uplink transmissions from thewireless nodes; logic for transmitting an allocation confirmationmessage allocating uplink resources to a set of at least some of thewireless nodes based on the received information; and logic forreceiving simultaneous transmissions of data from the set of wirelessnodes.
 24. The apparatus of claim 23, wherein the logic for receivingsimultaneous transmissions of data from the set of wireless nodescomprises receiving simultaneous transmissions of data sent via aspatial division multiple access (SDMA) scheme.
 25. The apparatus ofclaim 23, wherein at least one of the request for information regardinguplink transmissions from the wireless nodes and the allocationconfirmation message are transmitted using a message format specified inat least one of the IEEE 802.11 family of standards.
 26. The apparatusof claim 23, further comprising: logic for performing channel accessprior to transmitting the request for information regarding uplinktransmissions from the wireless nodes.
 27. The apparatus of claim 23,wherein the logic for receiving, in response to the request, informationregarding uplink transmissions from the wireless nodes is configured toreceive the information simultaneously transmitted from the wirelessnodes via an orthogonal division multiple access (OFDMA) scheme.
 28. Theapparatus of claim 27, wherein each wireless node transmits on apredetermined subset of available tones assigned during a registrationprocess.
 29. The apparatus of claim 23, wherein the allocationconfirmation message includes at least one of: timing adjustmentinformation; frequency adjustment information; and power adjustmentinformation.
 30. The apparatus of claim 29, wherein the allocationconfirmation message includes a number of bits of timing adjustmentinformation for each station.
 31. The apparatus of claim 23, furthercomprising: logic for determining which wireless nodes will be allocateduplink resources based, at least in part, on the information regardinguplink transmissions from the wireless nodes.
 32. The apparatus of claim23, further comprising: logic for receiving sounding signals transmittedfrom the wireless nodes.
 33. The apparatus of claim 32, furthercomprising: logic for determining which wireless nodes will be allocateduplink resources based, at least in part, on the sounding signals. 34.The apparatus of claim 32, further comprising: logic for determiningdata rates for uplink transmission from the wireless nodes based, atleast in part, on the sounding signals.
 35. The apparatus of claim 23,further comprising logic for transmitting an acknowledgement messageacknowledging receipt of the information regarding uplink transmissionsfrom the wireless nodes.
 36. An apparatus for scheduling transmissionsof data from a wireless node in a wireless communications system thatsupports simultaneous transmissions of data from multiple wirelessnodes, comprising: logic for transmitting information regarding uplinktransmissions via an orthogonal frequency division multiple access(OFDMA) transmission scheme utilizing a subset of available tones in thesystem; logic for receiving a message acknowledging receipt of thetransmitted information regarding uplink transmissions; and logic fortransmitting data on an uplink after receiving the allocationconfirmation message.
 37. The apparatus of claim 36, further comprising:logic for receiving a request for information regarding uplinktransmissions from the wireless nodes; and logic for transmitting theinformation regarding uplink transmissions in response to the request.38. The apparatus of claim 37, wherein at least one of the request forinformation regarding uplink transmissions from the wireless nodes andthe allocation confirmation message are transmitted using a messageformat specified in at least one of the IEEE 802.11 family of standards.39. The apparatus of claim 36, wherein the logic for transmitting dataon an uplink after receiving the allocation confirmation message isconfigured to transmit data on the uplink simultaneously withtransmissions on the uplink from other wireless nodes according to aspatial division multiple access (SDMA) scheme.
 40. The apparatus ofclaim 39, wherein each wireless node transmits information regardinguplink transmissions according to an OFDMA transmission scheme on apredetermined subset of available tones assigned during a registrationprocess.
 41. The apparatus of claim 36, further comprising logic forreceiving, in the message acknowledging receipt of the transmittedinformation regarding uplink transmissions at least one of: timingadjustment information; frequency adjustment information; and poweradjustment information.
 42. The apparatus of claim 36, furthercomprising: logic for transmitting sounding signals for use in channelestimation after receiving the message acknowledging receipt of thetransmitted information regarding uplink transmissions.
 43. Theapparatus of claim 36, further comprising: logic for receiving anindication of a data rate to use for transmitting data on the uplink.44. The apparatus of claim 36, wherein the information regarding uplinktransmissions comprises at least one of: an indication of a transmissionclass; and a length of transmission.
 45. An apparatus for schedulingsimultaneous transmissions of data from multiple wireless nodes in awireless communications system, comprising: means for transmitting arequest for information regarding uplink transmissions from the wirelessnodes; means for receiving, in response to the request, informationregarding uplink transmissions from the wireless nodes; means fortransmitting an allocation confirmation message allocating uplinkresources to a set of at least some of the wireless nodes based on thereceived information; and means for receiving simultaneous transmissionsof data from the set of wireless nodes.
 46. The apparatus of claim 45,wherein the means for receiving simultaneous transmissions of data fromthe set of wireless nodes comprises receiving simultaneous transmissionsof data sent via a spatial division multiple access (SDMA) scheme. 47.The apparatus of claim 45, wherein at least one of the request forinformation regarding uplink transmissions from the wireless nodes andthe allocation confirmation message are transmitted using a messageformat specified in at least one of the IEEE 802.11 family of standards.48. The apparatus of claim 45, further comprising: means for performingchannel access prior to transmitting the request for informationregarding uplink transmissions from the wireless nodes.
 49. Theapparatus of claim 45, wherein the means for receiving, in response tothe request, information regarding uplink transmissions from thewireless nodes is configured to receive the information simultaneouslytransmitted from the wireless nodes via an orthogonal division multipleaccess (OFDMA) scheme.
 50. The apparatus of claim 49, wherein eachwireless node transmits on a predetermined subset of available tonesassigned during a registration process.
 51. The apparatus of claim 45,wherein the allocation confirmation message includes at least one of:timing adjustment information; frequency adjustment information; andpower adjustment information.
 52. The apparatus of claim 51, wherein theallocation confirmation message includes a number of bits of timingadjustment information for each station.
 53. The apparatus of claim 45,further comprising: means for determining which wireless nodes will beallocated uplink resources based, at least in part, on the informationregarding uplink transmissions from the wireless nodes.
 54. Theapparatus of claim 45, further comprising: means for receiving soundingsignals transmitted from the wireless nodes.
 55. The apparatus of claim54, further comprising: means for determining which wireless nodes willbe allocated uplink resources based, at least in part, on the soundingsignals.
 56. The apparatus of claim 54, further comprising: means fordetermining data rates for uplink transmission from the wireless nodesbased, at least in part, on the sounding signals.
 57. The apparatus ofclaim 45, further comprising means for transmitting an acknowledgementmessage acknowledging receipt of the information regarding uplinktransmissions from the wireless nodes.
 58. An apparatus for schedulingtransmissions of data from a wireless node in a wireless communicationssystem that supports simultaneous transmissions of data from multiplewireless nodes, comprising: means for transmitting information regardinguplink transmissions via an orthogonal frequency division multipleaccess (OFDMA) transmission scheme utilizing a subset of available tonesin the system; means for receiving a message acknowledging receipt ofthe transmitted information regarding uplink transmissions; and meansfor transmitting data on an uplink after receiving the allocationconfirmation message.
 59. The apparatus of claim 58, further comprising:means for receiving a request for information regarding uplinktransmissions from the wireless nodes; and means for transmitting theinformation regarding uplink transmissions in response to the request.60. The apparatus of claim 59, wherein at least one of the request forinformation regarding uplink transmissions from the wireless nodes andthe allocation confirmation message are transmitted using a messageformat specified in at least one of the IEEE 802.11 family of standards.61. The apparatus of claim 58, wherein the means for transmitting dataon an uplink after receiving the allocation confirmation message isconfigured to transmit data on the uplink simultaneously withtransmissions on the uplink from other wireless nodes according to aspatial division multiple access (SDMA) scheme.
 62. The apparatus ofclaim 61, wherein each wireless node transmits information regardinguplink transmissions according to an OFDMA transmission scheme on apredetermined subset of available tones assigned during a registrationprocess.
 63. The apparatus of claim 58, further comprising means forreceiving, in the message acknowledging receipt of the transmittedinformation regarding uplink transmissions at least one of: timingadjustment information; frequency adjustment information; and poweradjustment information.
 64. The apparatus of claim 58, furthercomprising: means for transmitting sounding signals for use in channelestimation after receiving the message acknowledging receipt of thetransmitted information regarding uplink transmissions.
 65. Theapparatus of claim 58, further comprising: means for receiving anindication of a data rate to use for transmitting data on the uplink.66. The apparatus of claim 58, wherein the information regarding uplinktransmissions comprises at least one of: an indication of a transmissionclass; and a length of transmission.
 67. A computer-program product forscheduling simultaneous transmissions of data from multiple wirelessnodes in a wireless communications system comprising a computer readablemedium having instructions stored thereon, the instructions beingexecutable by one or more processors and the instructions comprisinginstructions for: transmitting a request for information regardinguplink transmissions from the wireless nodes; receiving, in response tothe request, information regarding uplink transmissions from thewireless nodes; transmitting an allocation confirmation messageallocating uplink resources to a set of at least some of the wirelessnodes based on the received information; and receiving simultaneoustransmissions of data from the set of wireless nodes.
 68. Acomputer-program product for scheduling transmissions of data from awireless node in a wireless communications system that supportssimultaneous transmissions of data from multiple wireless nodescomprising a computer readable medium having instructions storedthereon, the instructions being executable by one or more processors andthe instructions comprising instructions for: transmitting informationregarding uplink transmissions via an orthogonal frequency divisionmultiple access (OFDMA) transmission scheme utilizing a subset ofavailable tones in the system; receiving a message acknowledging receiptof the transmitted information regarding uplink transmissions; andtransmitting data on an uplink after receiving the allocationconfirmation message.